Parallel Execution of Loops with Conditional Statements

نویسندگان

  • Eduard Ayguadé
  • Jordi Torres
  • Jesús Labarta
  • Josep Llosa
چکیده

This paper describes an approach to the evaluation of bounds of the execution time and number of processors needed to execute DO-like loops on MIMD systems. In the scope of this paper, we only consider single-nested loops. The evaluation of these bounds is done from information about dependences known at compile time. Due to the lack of information at compile time about the dynamic execution of the loop when conditional statements appear, an upper bound of the number of processors is obtained. In addition, a measure of the worst efficiency in terms of processor utilization is obtained by predicting the sequence of execution branches with the lowest parallelism. We also present some simulation results that show how the efficiency varies with the probability of the execution branches. Parallel code generation for shared-memory multiprocessors is outlined.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

On Predicated Execution

Predicated execution as required in Modulo Scheduling technique for parallelizing innermost loops with conditional statements is examined. We obtain an improved semantics for predicate operations together with an optimal and efficient algorithm for their use.

متن کامل

Detecting Program Components With Equivalent Behaviors

The execution behavior of a program component is defined as the sequence of values produced at the component during program execution. This paper presents an efficient algorithm for detecting program components − in one or more programs − that exhibit identical execution behaviors. The algorithm operates on a new graph representation for programs that combines features of static-single-assignme...

متن کامل

A Thesis Submitted in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy

Loops are the main source of parallelism in scientific programs. Hence, several techniques were developed to detect parallelism in these loops and transform them into parallel forms. In this dissertation, compile time transformations and efficient parallel execution of loops with various type of dependencies are investigated. First, Doacross loops with uniform dependencies are considered for ex...

متن کامل

Software Pipeliner: Parallelization of Loops

Software pipelining, as an important parallel technique for loop structure, exploits the parallelism present among the iterations of a loop by overlapping the execution of successive iterations. This paper presents a practical and usable algorithm, Overlapping Modulo Scheduling(OMS), which is capable of modulo scheduling loops subjected to recurrence dependences and resource constraints for rea...

متن کامل

The Techniques for Software Pipelining Loops with Conditional Constructs

Software pipelining, as an important parallel technique for loop structure, exploits the parallelism present among the iterations of a loop by overlapping the execution of successive iterations. The diiculty encountered when software pipelin-ing loops with conditional branches is that arbitrary control ow complicates the construction of an overlapping schedule since there are multiple possible ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007